﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using BGCOP.CAVTOP.COMMON;
using BGCOP.CAVTOP.BUSINESSLAYER;

namespace BGCOP.CAVTOP.WINFORMS
{
    public partial class frmEmpresa : Form
    {
        private LogCls logF = new LogCls();
        public Utilitys ut = new Utilitys();

        public frmEmpresa()
        {
            InitializeComponent();
        }

        private void frmEmpresa_Load(object sender, EventArgs e)
        {
            Empresas tmp = new Empresas();
            listBox1.DataSource = tmp.ListarTodas();
            listBox1.DisplayMember = "RazonSocial";
            listBox1.ValueMember = "idEmpresa";
        }

        private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            TEmpresa tmp = (TEmpresa)listBox1.SelectedItem;
            txtNit.Text = tmp.nit;
            txtRazonSocial.Text  = tmp.RazonSocial;
            txtTelefonos.Text = tmp.telefonos;
            txtExtension.Text = tmp.telContactoInterno;
            txtContacto.Text = tmp.EmpleadoContacto;
            txtObservaciones.Text = tmp.ObservacioneEmpresa;
            txtCargoContacto.Text = tmp.CargoContacto;
        }

        private void btnAgregar_Click(object sender, EventArgs e)
        {
            txtContacto.Text = "";
            txtExtension.Text = "";
            txtNit.Text = "";
            txtObservaciones.Text = "";
            txtRazonSocial.Text = "";
            txtTelefonos.Text = "";
            txtNit.Focus();
            txtCargoContacto.Text = "";
        }

        private void btnEliminar_Click(object sender, EventArgs e)
        {
            Empresas tmp = new Empresas();
            if (MessageBox.Show("Desea eliminar el registro seleccionado?", "Gestion CAV12",
                MessageBoxButtons.YesNoCancel) == DialogResult.Yes)
            {
                tmp.EliminarEmpresa(Convert.ToInt32(listBox1.SelectedValue));
            }
            listBox1.DataSource = tmp.ListarTodas();
            listBox1.DisplayMember = "RazonSocial";
            listBox1.ValueMember = "idEmpresa";
        }

        private void btnCancelar_Click(object sender, EventArgs e)
        {
            //esto es para cerrar la ventana y probar
            this.Close();
        }

        private void btnModificar_Click(object sender, EventArgs e)
        {
            TEmpresa tmp = new TEmpresa();
            tmp.nit = txtNit.Text;
            tmp.RazonSocial = txtRazonSocial.Text;
            tmp.telefonos = txtTelefonos.Text;
            tmp.telContactoInterno = txtExtension.Text;
            tmp.EmpleadoContacto = txtContacto.Text;
            tmp.ObservacioneEmpresa = txtObservaciones.Text;
            tmp.CargoContacto = txtCargoContacto.Text;

            Empresas mm = new Empresas();

            if (listBox1.SelectedIndex == -1)
            {

                //agragr un empresa nueva

                
                mm.CrearEmpresa(tmp, (int)BGCOP.CAVTOP.WINFORMS.Program.idUsuarioActual);
                MessageBox.Show("El registro se agrego con exito!", "Gestion CAV12", MessageBoxButtons.OK);
                listBox1.DataSource = mm.ListarTodas();
            }
            else
            {
                //modificar una empresa existente
                mm.ModificarEmpresa((int)listBox1.SelectedValue, tmp, (int)BGCOP.CAVTOP.WINFORMS.Program.idUsuarioActual);
                MessageBox.Show("El registro se modificó con exito!", "Gestion CAV12", MessageBoxButtons.OK);
                listBox1.DataSource = mm.ListarTodas();
            }
        }

       
    }
}
